package com.lambo.maven.core.utils.superHttp.entity;

import org.apache.http.conn.ssl.SSLConnectionSocketFactory;

import com.lambo.maven.core.utils.superHttp.core.SHttpCoreDefault;

/**
 * SHttpConfig
 */
public class SHttpConfig {

    // https代理
    public static String PROXY_MODE_CUSTOM = "custom";
    public static String PROXY_MODE_SYSTEM = "system";
    // sock5代理
    public static String PROXY_MODE_SOCK5 = "sock5";
    // 无代理
    public static String PROXY_MODE_NONE = "none";

    private boolean isChrome; // 是否模拟chrome浏览器
    private String proxyMode = "none"; // 代理模式
    private String proxyHost; // 代理host
    private int proxyPort; // 代理端口
    private String username; // 代理账号
    private String password; // 代理密码

    private SSLConnectionSocketFactory sslsf; //sslsf证书
    private Class<?> shttpCore = SHttpCoreDefault.class; // 请求核心

    public boolean isSock5Proxy() {
        return proxyMode.equals(PROXY_MODE_SOCK5);
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public boolean isNoneProxy() {
        return proxyMode.equals("none");
    }

    public boolean isCustomProxy() {
        return proxyMode.equals("custom");
    }

    public boolean isSystemProxy() {
        return proxyMode.equals("system");
    }

    public boolean isChrome() {
        return isChrome;
    }


    public boolean isIsChrome() {
        return this.isChrome;
    }

    public boolean getIsChrome() {
        return this.isChrome;
    }

    public void setIsChrome(final boolean isChrome) {
        this.isChrome = isChrome;
    }

    public String getProxyMode() {
        return this.proxyMode;
    }

    public void setProxyMode(final String proxyMode) {
        this.proxyMode = proxyMode;
    }

    public String getProxyHost() {
        return this.proxyHost;
    }

    public void setProxyHost(final String proxyHost) {
        this.proxyHost = proxyHost;
    }

    public int getProxyPort() {
        return this.proxyPort;
    }

    public void setProxyPort(final int proxyPort) {
        this.proxyPort = proxyPort;
    }

    public SSLConnectionSocketFactory getSslsf() {
        return this.sslsf;
    }

    public void setSslsf(final SSLConnectionSocketFactory sslsf) {
        this.sslsf = sslsf;
    }

    public Class<?> getShttpCore() {
        return this.shttpCore;
    }

    public void setShttpCore(Class<?> shttpCore) {
        this.shttpCore = shttpCore;
    }
    
    
    
}